package com.sinbad.fileupload.service;

import org.springframework.core.io.Resource;
import org.springframework.web.multipart.MultipartFile;

import java.nio.file.Path;
import java.util.stream.Stream;

/**
 * @author: sinbad
 * @time: 2021/10/22
 * @description：
 */
public interface FileStorageService {

    /**
     * 文件初始化
     */
    void init();

    /**
     * 文件上传
     *
     * @param multipartFile
     */
    void save(MultipartFile multipartFile);

    /**
     * 加载资源
     *
     * @param filename
     * @return
     */
    Resource load(String filename);

    /**
     * 加载资源路径
     *
     * @return
     */
    Stream<Path> load();

    /**
     * 文件清理
     */
    void clear();

}
